package com.yami.shop.webservice.common.dao;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yami.shop.bean.dto.SubScribeFundsPageDTO;
import com.yami.shop.bean.model.SubscribeFundsRecord;
import com.yami.shop.bean.vo.SubScribeFundsPageVo;
import com.yami.shop.common.util.PageParam;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 资金记录Mapper接口
 *
 * @author zhangchaoqun
 * @date 2021-10-13
 */
public interface FundsRecordMapper
{
    /**
     * 查询资金记录
     *
     * @param id 资金记录主键
     * @return 资金记录
     */
    public SubscribeFundsRecord selectFundsRecordById(String id);

    /**
     * 查询资金记录列表
     *
     * @param fundsRecord 资金记录
     * @return 资金记录集合
     */
    public List<SubscribeFundsRecord> selectFundsRecordList(SubscribeFundsRecord fundsRecord);

    /**
     * 新增资金记录
     *
     * @param fundsRecord 资金记录
     * @return 结果
     */
    public int insertFundsRecord(SubscribeFundsRecord fundsRecord);

    /**
     * 修改资金记录
     *
     * @param fundsRecord 资金记录
     * @return 结果
     */
    public int updateFundsRecord(SubscribeFundsRecord fundsRecord);

    /**
     * 删除资金记录
     *
     * @param id 资金记录主键
     * @return 结果
     */
    public int deleteFundsRecordById(String id);

    /**
     * 批量删除资金记录
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteFundsRecordByIds(String[] ids);
    /**
     * 批量新增资金记录
     *
     * @param fundsRecord 资金记录
     * @return 结果
     */
    public int insertFundsRecordList(List<SubscribeFundsRecord> fundsRecord);

    /**
     * 查询资金记录列表 有搜素总和条件
     *
     * @param fundsRecord 资金记录
     * @return 资金记录集合
     */
    public List<SubscribeFundsRecord> selectFundsRecordList1(SubscribeFundsRecord fundsRecord);


    /**
     * 资金列表分页
     * @param pageParam
     * @param dto
     * @return
     */
    IPage<SubScribeFundsPageVo> pageList(PageParam<SubscribeFundsRecord> pageParam, @Param("dto") SubScribeFundsPageDTO dto);
}
